﻿#include "deck.h"


deck::deck()
{
	c[0] = { 2, "2", '\x03' };
	c[1] = { 3, "3", '\x03' };
	c[2] = { 4, "4", '\x03' };
	c[3] = { 5, "5", '\x03' };
	c[4] = { 6, "6", '\x03' };
	c[5] = { 7, "7", '\x03' };
	c[6] = { 8, "8", '\x03' };
	c[7] = { 9, "9", '\x03' };
	c[8] = { 10, "10", '\x03' };
	c[9] = { 10, "Kn", '\x03' };
	c[10] = { 10, "Q", '\x03' };
	c[11] = { 10, "K", '\x03' };
	c[12] = { 11, "A", '\x03' };
	c[13] = { 2, "2", '\x04' };
	c[14] = { 3, "3", '\x04' };
	c[15] = { 4, "4", '\x04' };
	c[16] = { 5, "5", '\x04' };
	c[17] = { 6, "6", '\x04' };
	c[18] = { 7, "7", '\x04' };
	c[19] = { 8, "8", '\x04' };
	c[20] = { 9, "9", '\x04' };
	c[21] = { 10, "10", '\x04' };
	c[22] = { 10, "Kn", '\x04' };
	c[23] = { 10, "Q", '\x04' };
	c[24] = { 10, "K", '\x04' };
	c[25] = { 11, "A", '\x04' };
	c[26] = { 2, "2", '\x05' };
	c[27] = { 3, "3", '\x05' };
	c[28] = { 4, "4", '\x05' };
	c[29] = { 5, "5", '\x05' };
	c[30] = { 6, "6", '\x05' };
	c[31] = { 7, "7", '\x05' };
	c[32] = { 8, "8", '\x05' };
	c[33] = { 9, "9", '\x05' };
	c[34] = { 10, "10", '\x05' };
	c[35] = { 10, "Kn", '\x05' };
	c[36] = { 10, "Q", '\x05' };
	c[37] = { 10, "K", '\x05' };
	c[38] = { 11, "A", '\x05' };
	c[39] = { 2, "2", '\x06' };
	c[40] = { 3, "3", '\x06' };
	c[41] = { 4, "4", '\x06' };
	c[42] = { 5, "5", '\x06' };
	c[43] = { 6, "6", '\x06' };
	c[44] = { 7, "7", '\x06' };
	c[45] = { 8, "8", '\x06' };
	c[46] = { 9, "9", '\x06' };
	c[47] = { 10, "10", '\x06' };
	c[48] = { 10, "Kn", '\x06' };
	c[49] = { 10, "Q", '\x06' };
	c[50] = { 10, "K", '\x06' };
	c[51] = { 11, "A", '\x06' };

	srand(time(NULL));
}


deck::~deck()
{
}

void deck::swap(int a, int b){
	card temp;
	temp = this->c[a];
	this->c[a] = this->c[b];
	this->c[b] = temp;
}

void deck::shuffle(){
	for (int i = 0; i < 52; i++){
		swap(rand() % 52, rand() % 52);
	}
	cards.clear();
	for (int i = 0; i < 52; i++){
		cards.push_back(c[i]);
	}
}

card deck::draw(){
	card temp = cards.back();
	cards.pop_back();
	return temp;
}